import pandas as pd
import os
from data_loader import load_win_rate_data, load_ddragon_mapping


def test_load_win_rate_data():
    # 设置pandas显示选项，确保完整显示所有数据
    pd.set_option('display.max_columns', None)  # 显示所有列
    pd.set_option('display.max_rows', None)     # 显示所有行
    pd.set_option('display.width', None)        # 自动调整宽度
    pd.set_option('display.max_colwidth', None) # 显示所有列内容

    # 获取当前脚本所在目录
    current_dir = os.path.dirname(os.path.abspath(__file__))
    # 构建指向data目录的相对路径
    project_root = os.path.dirname(current_dir)
    data_path = os.path.join(project_root, 'data', 'opgg_top_tier_list.csv')

    try:
        # 加载数据
        df = load_win_rate_data(data_path)
        
        # 打印数据的基本信息来验证加载是否成功
        print("数据加载成功!")
        print(f"总共加载了 {len(df)} 个英雄的数据")
        
        
        # 打印数据类型信息
        print("\n数据类型信息:")
        print(df.dtypes)
        
        # 打印所有数据（而不是前5行）
        print("\n所有数据:")
        print(df)
    except Exception as e:
        print(f"加载数据时出错: {e}")


def test_load_ddragon_mapping():
    # 获取当前脚本所在目录
    current_dir = os.path.dirname(os.path.abspath(__file__))
    # 构建指向data目录的相对路径
    project_root = os.path.dirname(current_dir)
    data_path = os.path.join(project_root, 'data', 'champion')
    try:
        # 加载数据
        mapping = load_ddragon_mapping(data_path)
        
        # 打印数据的基本信息来验证加载是否成功
        print("数据加载成功!")
        print(f"总共加载了 {len(mapping)} 个英雄的数据")
        # 打印所有数据（而不是前5行）
        print("\n所有数据:")
        print(mapping)
    except Exception as e:
        print(f"加载数据时出错: {e}")


